package IOStreamTest.FileStream;

import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.IOException;

/*
FileInputStream类其他常用方法
    int available() : 返回流当中剩余的没有读到的字节数量(可以获取总字节数量)
    long skip(long n) : 跳过几个字节不读
 */
public class FileInputStreamTest4 {
    public static void main(String[] args) {
        FileInputStream fis = null;
        try {
            fis = new FileInputStream("src\\InterfaceTest\\InterfaceTest1.java");
            int num1 = fis.available();
            System.out.println("总字节数量:"+num1);
            byte[] bytes = new byte[num1]; //这种方式不太适合大文件，因为byte数组不能太大
            //这种方式可以不用循环，一次读完数据
            fis.read(bytes);
            int num = fis.available();
            System.out.println("剩余字节数量:"+num); //获取流中没有读到的字节数量


        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        } finally{
            if(fis != null){
                try {
                    fis.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }
}
